Skip to content

555 multiple c main programs#556

Merged
allynt merged 17 commits into
mainfrom
555_multiple_c_main_programs
May 27, 2026
Merged

555 multiple c main programs#556
allynt merged 17 commits into
mainfrom
555_multiple_c_main_programs

Conversation

@hiker
Copy link
Copy Markdown
Collaborator

@hiker Joerg Henrichs (hiker) commented Apr 16, 2026

Fixes #555. I've updated/added tests for multiple C programs, and can also confirm that this version is able to build multiple Socrates C executables.

I have also fixed the symbol handling (C symbols are case dependent, only Fortran symbols are not). And as a result of the change the output filename of a C main program is now changed from main to be the same as the main source file name (without .c).

@hiker Joerg Henrichs (hiker) requested review from a team and Pierre Siddall (Pierre-siddall) and removed request for a team April 16, 2026 04:50
@hiker Joerg Henrichs (hiker) added um Ready for review Indicating that a PR is ready to be reviewed. labels Apr 16, 2026
@hiker
Copy link
Copy Markdown
Collaborator Author

I've labeled it for the UM release. While it is strictly speaking, it's Socrates that needs it, not UM (and socrates is already built as part of UM/lfric as required), but it's a small change only, so I don't think we need it as a separate mile stone.

Comment thread tests/system_tests/CUserHeader/test_CUserHeader.py Fixed
Comment thread tests/system_tests/CUserHeader/test_CUserHeader.py Fixed
Copy link
Copy Markdown
Contributor

@allynt allynt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adds the ability to cope w/ multiple main C programs by appending the corresponding filename to each identifier in the symbol collection; For example, "main@my_filename".

LGTM.

@allynt allynt merged commit 57a9d1f into main May 27, 2026
9 checks passed
@allynt allynt deleted the 555_multiple_c_main_programs branch May 27, 2026 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Ready for review Indicating that a PR is ready to be reviewed.

Projects

Status: Complete

Development

Successfully merging this pull request may close these issues.

Multiple C main programs

2 participants